from qiniu import Auth, put_file, etag,put_data
import qiniu.config

#需要填写你的 Access Key 和 Secret Key
access_key = 'Q1MfbksFEEZ4SkCRLeuc8Zji7pED7JnF1ne4qqZF'
secret_key = '2GVcRA_UNkZzWpk1qHMjJlaUtLpHGyTLL37yieMV'
def image_storage(image_data):
    #构建鉴权对象
    q = Auth(access_key, secret_key)

    #要上传的空间
    bucket_name = 'info19'

    #上传到七牛后保存的文件名
    key = None

    #生成上传 Token，可以指定过期时间等
    token = q.upload_token(bucket_name, key, 3600)

    #要上传文件的本地路径
    # localfile = './302729.jpg'

    ret, info = put_data(token, key, image_data)
    # 如果上传成功 返回图片名字 否则返回空
    if info.status_code == 200:
        # print(ret.get('key'))
        return ret.get('key')
    else:
        return ""
# print(ret)
# 测试
if __name__ == '__main__':
    # 测试上传文件  使用with 会自动关闭io流
    with open('./302729.jpg', 'rb') as f:
        image_name = image_storage(f.read())
        print(image_name)